home *** CD-ROM | disk | FTP | other *** search
/ Venus 7000 / darktronics.iso / Software / Service Packs / WinXPSP1.exe / ip / query.as_ / query.asp
Encoding:
Text File  |  2002-04-16  |  18.8 KB  |  610 lines

  1. <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN" "html.dtd">
  2. <HTML>
  3. <HEAD>
  4.  
  5. <META HTTP-EQUIV="Content-Type" content="text/html; charset=Windows-1252">
  6.  
  7. <META NAME="ROBOTS" CONTENT="NOINDEX">
  8.  
  9. <%
  10. ' ********** INSTRUCTIONS FOR QUICK CUSTOMIZATION **********
  11. '
  12. ' This form is set up for easy customization. It allows you to modify the
  13. ' page logo, the page background, the page title and simple query
  14. ' parameters by modifying a few files and form variables. The procedures
  15. ' to do this are explained below.
  16. '
  17. '
  18. ' *** Modifying the Form Logo:
  19.  
  20. ' The logo for the form is named is2logo.gif. To change the page logo, simply
  21. ' name your logo is2logo.gif and place in the same directory as this form. If
  22. ' your logo is not a GIF file, or you don't want to copy it, change the following
  23. ' line so that the logo variable contains the URL to your logo.
  24.  
  25.         FormLogo = "is2logo.gif"
  26.  
  27. '
  28. ' *** Modifying the Form's background pattern.
  29.  
  30. ' You can use either a background pattern or a background color for your
  31. ' form. If you want to use a background pattern, store the file with the name
  32. ' is2bkgnd.gif in the same directory as this file and remove the remark character
  33. ' the single quote character) from the line below. Then put the remark character on
  34. ' the second line below.
  35. '
  36. ' If you want to use a different background color than white, simply edit the
  37. ' bgcolor line below, replacing white with your color choice.
  38.  
  39. '       FormBG = "background = " & chr(34) & "is2bkgnd.gif" & chr(34)
  40.         FormBG = "bgcolor = " & chr(34) & "#FFFFFF" & chr(34)
  41.  
  42.  
  43. ' *** Modifying the Form's Title Text.
  44.  
  45. ' The Form's title text is set on the following line.
  46. %>
  47.  
  48.     <TITLE>Search Results</TITLE>
  49.  
  50. <SCRIPT LANGUAGE="JavaScript">
  51. <!--
  52.     TempString = navigator.appVersion
  53.     if (navigator.appName == "Microsoft Internet Explorer"){    
  54. // Check to see if browser is Microsoft
  55.         if (TempString.indexOf ("4.") >= 0){
  56. // Check to see if it is IE 4
  57.             document.writeln('<link rel="stylesheet" type="text/css" href="/iishelp/common/coua.css">');
  58.         }
  59.         else {
  60.             document.writeln('<link rel="stylesheet" type="text/css" href="/iishelp/common/cocss.css">');
  61.         }
  62.     }
  63.     else if (navigator.appName == "Netscape") {                        
  64. // Check to see if browser is Netscape
  65.         document.writeln('<link rel="stylesheet" type="text/css" href="/iishelp/common/coua.css">');
  66.     }
  67.     else
  68.         document.writeln('<link rel="stylesheet" type="text/css" href="/iishelp/common/cocss.css">');
  69. //-->
  70. </script>
  71.  
  72. <%
  73. '
  74. ' *** Modifying the Form's Search Scope.
  75. '
  76. ' The form will search from the root of your web server's namespace and below
  77. ' (deep from "/" ). To search a subset of your server, for example, maybe just
  78. ' a PressReleases directory, modify the scope variable below to list the virtual path to
  79. ' search. The search will start at the directory you specify and include all sub-
  80. ' directories.
  81.  
  82.         FormScope = "/iishelp/iis"
  83.  
  84. '
  85. ' *** Modifying the Number of Returned Query Results.
  86. '
  87. ' You can set the number of query results returned on a single page
  88. ' using the variable below.
  89.                 
  90.                 'was 10
  91.         PageSize = 10
  92.  
  93. '
  94. ' *** Setting the Locale.
  95. '
  96. ' The following line sets the locale used for queries. In most cases, this
  97. ' should match the locale of the server. You can set the locale below.
  98.  
  99.         SiteLocale = "EN-US"
  100.  
  101. ' ********** END QUICK CUSTOMIZATION SECTIONS ***********
  102. noise=",about,after,all,also,an,another,any,and,are,as,at,be,because,been,before,being,between,both,but,by,came,can,come,could,did,do,each,for,from,get,got,has,had,he,have,her,here,him,himself,his,how,if,in,into,is,it,like,make,many,me,might,more,most,much,must,my,never,near,now,of,on,only,or,other,our,out,over,said,same,see,should,since,some,still,such,take,than,that,the,their,them,then,there,these,they,this,those,through,to,too,under,up,very,was,way,we,well,were,what,where,which,while,who,with,would,you,your,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,$,1,2,3,4,5,6,7,8,9,0,_,!,&,~,|,?,I,"
  103.  
  104. punc2="$,1234567890_!&~|? #+()"
  105. punc="$,1234567890_!&~|?#@%^+"
  106. %>
  107.  
  108. <%
  109. ' Set Initial Conditions
  110.     NewQuery = FALSE
  111.     UseSavedQuery = FALSE
  112.     rSearchString = ""
  113.  
  114. ' Did the user press a SUBMIT button to execute the form? If so get the form variables.
  115.     if Request.ServerVariables("REQUEST_METHOD") = "POST" then
  116.         rSearchString = Request.Form("SearchString")
  117.     SearchType=Request.QueryString("SearchType")
  118.     if SearchString<>"" then
  119.         Session("SearchStringDisplay")=Server.HTMLEncode(rSearchString)
  120.     end if
  121.         rFreeText = Request.Form("FreeText")
  122.     QueryForm = "Query.Asp"
  123.     rCiResultsSize = Request.Form("CiResultsSize")
  124.      CiLimits = Request.Form("CiLimits")
  125.         ' NOTE: this will be true only if the button is actually pushed.
  126.         ' if Request.Form("Action") = "Search" then
  127.             NewQuery = TRUE
  128.         if CiLimits = "on" then
  129.             RankBase=50
  130.         else
  131.             RankBase=1000
  132.         end if
  133.         ' end if
  134.     end if
  135.     if Request.ServerVariables("REQUEST_METHOD") = "GET" then
  136.         rSearchString = Request.QueryString("SearchString")
  137.     SearchType=Request.QueryString("SearchType")
  138.     QueryForm = "Query.Asp"
  139.     rCiResultsSize = Request.QueryString("CiResultsSize")
  140.                 rFreeText = Request.QueryString("FreeText")
  141.                 FormScope = Server.HTMLEncode(Request.QueryString("sc"))
  142.                 RankBase = CInt(Request.QueryString("RankBase"))
  143.         if Request.QueryString("pg") <> "" then
  144.             NextPageNumber = CInt(Request.QueryString("pg"))
  145.             NewQuery = FALSE
  146.             UseSavedQuery = TRUE
  147.         else
  148.             NewQuery = SearchString <> ""
  149.         end if
  150.     end if
  151.  
  152.     ' remove HTML special characters, they are ignored in search
  153.     SearchString = replace(replace(replace(rSearchString, "<", ""), ">", ""), """", "")
  154.  
  155.     ' encode these texts to avoid cross site scripting
  156.     CiResultsSize = Server.HTMLEncode(rCiResultsSize)
  157.     FreeText = Server.HTMLEncode(rFreeText)
  158.  
  159. %>
  160.  
  161. </HEAD>
  162.  
  163. <BODY <%=FormBG%>>
  164.  
  165. <%
  166.   if NewQuery then
  167.     set Session("Query") = nothing
  168.     set Session("Recordset") = nothing
  169.     NextRecordNumber = 1
  170.  
  171.     'Strip punctuation from search term
  172.     for x = 1 to len(SearchString)
  173.        testpunc= mid(SearchString,x,1)
  174.        if instr(punc,testpunc) then
  175.         SearchStringErr= SearchStringErr
  176.        else
  177.         SearchStringErr = SearchStringErr + testpunc
  178.        end if
  179.     next
  180.     SearchString = SearchStringErr
  181.  
  182.  
  183.   if SearchType=0 Then
  184.     'Strip noise words from search term
  185.     SearchStringComp=SearchString+" "
  186.     for x = 1 to len(SearchStringComp)
  187.     if mid(SearchStringComp,x,1)=" " Then
  188.         ncompare2 = ","+ncompare+","
  189.         if instr(noise,ncompare2) = 0 then
  190.             NewCompare=NewCompare+" "+ncompare
  191.         End If
  192.         ncompare=""
  193.     else
  194.         ncompare=ncompare+mid(SearchString,x,1)
  195.     end if
  196.     next        
  197.     x = len(NewCompare)
  198.     if left(NewCompare,1) = " " Then
  199.        NewCompare = right(NewCompare,(x-1))
  200.     end if
  201.     SearchString=NewCompare
  202.         CompSearch = "$CONTENTS " + SearchString
  203.   end if
  204.  
  205.   if SearchType=1 Then
  206.     CompSearch = chr(34) + SearchString + chr(34)
  207.   end if
  208.  
  209.   if SearchType=2 Then
  210.     'Strip noise words from search term
  211.     SearchStringComp=SearchString+" "
  212.     for x = 1 to len(SearchStringComp)
  213.     if mid(SearchStringComp,x,1)=" " Then
  214.         ncompare2 = ","+ncompare+","
  215.         if instr(noise,ncompare2) = 0 then
  216.             NewCompare=NewCompare+" "+ncompare
  217.         End If
  218.         ncompare=""
  219.     else
  220.         ncompare=ncompare+mid(SearchString,x,1)
  221.     end if
  222.     next        
  223.     x = len(NewCompare)
  224.     if left(NewCompare,1) = " " Then
  225.        NewCompare = right(NewCompare,(x-1))
  226.     end if
  227.     SearchString=NewCompare
  228.     slen=len(SearchString)
  229.     for k = 1 to slen
  230.     slet = Mid(SearchString,k,1)
  231.       if slet <> " " then
  232.             ss1=ss1+slet
  233.       else
  234.         ss1=ss1+ " AND "
  235.       end if
  236.     Next
  237.         CompSearch=ss1
  238.     If Right(CompSearch,5) = " AND " Then CompSearch = Left(CompSearch,Len(CompSearch)-5)
  239.   end if
  240.  
  241.  if SearchType=3 Then
  242.     'Strip noise words from search term
  243.     SearchStringComp=SearchString+" "
  244.     for x = 1 to len(SearchStringComp)
  245.     if mid(SearchStringComp,x,1)=" " Then
  246.         ncompare2 = ","+ncompare+","
  247.         if instr(noise,ncompare2) = 0 then
  248.             NewCompare=NewCompare+" "+ncompare
  249.         End If
  250.         ncompare=""
  251.     else
  252.         ncompare=ncompare+mid(SearchString,x,1)
  253.     end if
  254.     next        
  255.     x = len(NewCompare)
  256.     if left(NewCompare,1) = " " Then
  257.        NewCompare = right(NewCompare,(x-1))
  258.     end if
  259.     SearchString=NewCompare
  260.     slen=len(SearchString)
  261.     for k = 1 to slen
  262.     slet = Mid(SearchString,k,1)
  263.       if slet <> " " then
  264.             ss1=ss1+slet
  265.       else
  266.         ss1=ss1+ " OR "
  267.       end if
  268.     Next
  269.         CompSearch=ss1
  270.     If Right(CompSearch,4) = " OR " Then CompSearch = Left(CompSearch,Len(CompSearch)-4)
  271.   end if
  272.  
  273.   if SearchType=4 Then
  274.     'Strip noise words from search term
  275.     NCompare=""
  276.     NewCompare=""
  277.     SearchStringComp=SearchString+" "
  278.     for x = 1 to len(SearchStringComp)
  279.     if mid(SearchStringComp,x,1)=" " Then
  280.         ncompare2 = ","+ncompare+","
  281.         if instr(noise,ncompare2) = 0 then
  282.             NewCompare=NewCompare+" "+ncompare
  283.         End If
  284.         ncompare=""
  285.     else
  286.         ncompare=ncompare+mid(SearchString,x,1)
  287.     end if
  288.     next        
  289.     x = len(NewCompare)
  290.     if left(NewCompare,1) = " " Then
  291.        NewCompare = right(NewCompare,(x-1))
  292.     end if
  293.     SearchString=NewCompare
  294.     CompSearch = SearchString
  295.   end if
  296.  
  297.  
  298.     set Q = Server.CreateObject("ixsso.Query")
  299.         set util = Server.CreateObject("ixsso.Util")
  300.  
  301.     Q.Query = CompSearch
  302.     Q.Catalog = "Web" 
  303.     Q.SortBy = "rank[d]"
  304.     Q.Columns = "DocTitle, vpath, filename, size, write, characterization, rank"
  305.     Q.MaxRecords = RankBase 
  306.  
  307.         if FormScope <> "/" then
  308.                 util.AddScopeToQuery Q, FormScope, "deep"
  309.         end if
  310.  
  311.         if SiteLocale<>"" then
  312.                 Q.LocaleID = util.ISOToLocaleID(SiteLocale)
  313.         end if
  314.     On Error Resume Next
  315.     set RS = Q.CreateRecordSet("nonsequential")
  316.  
  317.     RS.PageSize = PageSize
  318.     Test = RS.PageSize
  319.     ActiveQuery = TRUE
  320.  
  321.  
  322.  
  323.   elseif UseSavedQuery then
  324.     if IsObject( Session("Query") ) And IsObject( Session("RecordSet") ) then
  325.       set Q = Session("Query")
  326.       set RS = Session("RecordSet")
  327.  
  328.  
  329.       if RS.RecordCount <> -1 and NextPageNumber <> -1 then
  330.         RS.AbsolutePage = NextPageNumber
  331.         NextRecordNumber = RS.AbsolutePosition
  332.       end if
  333.  
  334.       ActiveQuery = TRUE
  335.     else
  336.       Response.Write "ERROR - No saved query"
  337.     end if
  338.   end if
  339.  
  340.  
  341. If Err<>424 Then
  342.  
  343.   if ActiveQuery then
  344.     if not RS.EOF then
  345.  %>
  346.  
  347. <p>
  348. <HR WIDTH=80% ALIGN=center SIZE=3>
  349. <%LastRecordOnPage = NextRecordNumber + RS.PageSize - 1
  350. KLastRecordOnPage=LastRecordOnPage
  351. If KLastRecordOnPage>RS.RecordCount Then KLastRecordOnPage=RS.RecordCount%>
  352.  
  353.  
  354. <b>You searched for <%=Session("SearchStringDisplay")%></b><br><br>
  355. <b><i><font size="3"><%=NextRecordNumber%> - <%=KLastRecordOnPage%> of <%=RS.RecordCount%> results found</b></i></font><br>
  356. <p>
  357.  
  358. <%
  359.         LastRecordOnPage = NextRecordNumber + RS.PageSize - 1
  360.         CurrentPage = RS.AbsolutePage
  361.         if RS.RecordCount <> -1 AND RS.RecordCount < LastRecordOnPage then
  362.             LastRecordOnPage = RS.RecordCount
  363.         end if
  364.  
  365.  %>
  366.  
  367. <%
  368.  
  369. %>
  370.  
  371. <%'if Not RS.EOF and NextRecordNumber <= LastRecordOnPage then
  372.      
  373.     if Not RS.EOF and NextRecordNumber <= LastRecordOnPage then%>
  374.         <table border=0>
  375. <% end if %>
  376.  
  377. <%
  378.  
  379. Do While Not RS.EOF and NextRecordNumber <= LastRecordOnPage
  380.  
  381.         ' This is the detail portion for Title, Description, URL, Size, and
  382.     ' Modification Date.
  383.  
  384.  
  385.  
  386. TmpExt = Server.HTMLEncode( RS("filename") )
  387. FullExt = Right(TmpExt, 3)
  388.  
  389. If FullExt <> "cnt" and FullExt <> "hhc" and FullExt <> "hpj" and FullExt <> "hlp" and FullExt <> "rtf" and FullExt <> "asf" and FullExt <> "gid" and FullExt <> "fts" and FullExt <> "wmp" and FullExt <> "hhk" and FullExt <> "txt" and FullExt <> "ass" and FullExt <> "idq" and FullExt <> "ncr" and FullExt <> "ncl" and FullExt <> "url" and FullExt <> "css" and FullExt <> "prp" and FullExt <> "htx" and FullExt <> "htw" and FullExt <> "tmp" and FullExt <> "mdb" and FullExt <> "xls" and FullExt <> "chm" Then
  390.  
  391.  
  392.     ' If there is a title, display it, otherwise display the filename.
  393. %>
  394.     <p>
  395.     <tr class="RecordTitle">
  396.         
  397.                 <td><b><%=NextRecordNumber%>.</b></td>
  398.         <b class="RecordTitle"> <td><b>
  399.             <%if VarType(RS("DocTitle")) = 1 or RS("DocTitle") = "" then%>
  400.                 <a href="<%=RS("vpath")%>" class="RecordTitle"><%= Server.HTMLEncode( RS("filename") )%></a>
  401.             <%else%>
  402.                 <a href="<%=RS("vpath")%>" class="RecordTitle"><%= Server.HTMLEncode(RS("DocTitle"))%></a>
  403.             <%end if%>
  404.         </b></b><br>
  405.         
  406.             <%if VarType(RS("characterization")) = 8 and RS("characterization") <> "" then%>
  407.                 <%= RS("characterization")%>
  408.         
  409.         <%end if%>
  410.         <%if CiResultsSize = "on" then%>
  411.                 <%end if%>
  412.         </td>
  413.     </tr>
  414.     <tr>
  415.     </tr>
  416.  
  417. <%
  418. else
  419.    NextRecordNumber = NextRecordNumber-1
  420. end if%>
  421.  
  422. <%
  423.           RS.MoveNext
  424.           NextRecordNumber = NextRecordNumber+1
  425.       Loop
  426.  %>
  427.  
  428. </table>
  429.  
  430. <P><BR>
  431.  
  432. <%
  433.   else   ' NOT RS.EOF
  434.       if NextRecordNumber <> 1 then
  435.           Response.Write "No more documents in the query.<P>"
  436.       end if
  437.  
  438.   end if ' NOT RS.EOF%>
  439.  
  440. <%
  441.   if Q.QueryIncomplete then
  442. '    If the query was not executed because it needed to enumerate to
  443. '    resolve the query instead of using the index, but AllowEnumeration
  444. '    was FALSE, let the user know %>
  445.  
  446.     <P>
  447.     <I><B>The query could not be completed. Please resubmit the query.<BR> Technical details: AllowEnumeration must be set to TRUE to complete this query.</B></I><BR>
  448. <%end if
  449.  
  450.  
  451.   if Q.QueryTimedOut then
  452. '    If the query took too long to execute (for example, if too much work
  453. '    was required to resolve the query), let the user know %>
  454.     <P>
  455.     <I><B>The query took too long to complete.</B></I><BR>
  456. <%end if%>
  457.  
  458.  
  459. <TABLE>
  460.  
  461. <%
  462. '    This is the "previous" button.
  463. '    This retrieves the previous page of documents for the query.
  464. %>
  465.  
  466. <%SaveQuery = FALSE%>
  467. <%if CurrentPage > 1 and RS.RecordCount <> -1 then %>
  468.     <td align=left>
  469.         <form action="<%=QueryForm%>" method="get">
  470.             <INPUT TYPE="HIDDEN" NAME="SearchString" VALUE="<%=SearchString%>">
  471.                         <INPUT TYPE="HIDDEN" NAME="FreeText" VALUE="<%=FreeText%>">
  472.         <INPUT TYPE="HIDDEN" NAME="CiResultsSize" VALUE="<%=CiResultsSize%>">
  473.             <INPUT TYPE="HIDDEN" NAME="sc" VALUE="<%=FormScope%>">
  474.             <INPUT TYPE="HIDDEN" name="pg" VALUE="<%=CurrentPage-1%>" >
  475.             <INPUT TYPE="HIDDEN" NAME = "RankBase" VALUE="<%=RankBase%>">
  476.             <input type="submit" value="<< Back">
  477.         </form>
  478.     </td>
  479.         <%SaveQuery = TRUE%>
  480. <%end if%>
  481.  
  482. <%
  483. '    This is the "next" button for unsorted queries.
  484. '    This retrieves the next page of documents for the query.
  485.  
  486.   if Not RS.EOF or NextRecordNumber = 9 then%>
  487.     <td align=right>
  488.         <form action="<%=QueryForm%>" method="get">
  489.             <INPUT TYPE="HIDDEN" NAME="SearchString" VALUE="<%=SearchString%>">
  490.                         <INPUT TYPE="HIDDEN" NAME="FreeText" VALUE="<%=FreeText%>">
  491.         <INPUT TYPE="HIDDEN" NAME="CiResultsSize" VALUE="<%=CiResultsSize%>">
  492.             <INPUT TYPE="HIDDEN" NAME="sc" VALUE="<%=FormScope%>">
  493.             <INPUT TYPE="HIDDEN" name="pg" VALUE="<%=CurrentPage+1%>" >
  494.             <INPUT TYPE="HIDDEN" NAME = "RankBase" VALUE="<%=RankBase%>">
  495.  
  496.                 <% NextString = "More >>"%>
  497.             <input type="submit" value="<%=NextString%>">
  498.         </form>
  499.     </td>
  500.     <%SaveQuery = TRUE%>
  501. <%end if%>
  502.  
  503. </TABLE>
  504.  
  505. <% ' Display the page number %>
  506.  <%if RS.RecordCount = 0 then%>
  507.         No documents matched the query <%=SearchString%>.<br><br>
  508.  
  509.     You might want to:
  510.     <UL><LI>Let us know about this <a href="mailto:iisdocs@microsoft.com?subject=<%=SearchString%>-search%20term%20not%20matched&body=The%20term%20'<%=SearchString%>'%20produced%20no%20matches.">(mailto:iisdocs@microsoft.com)</a> so that we can improve Search in future releases.
  511.     <LI>Check the Index for related terms.
  512.     <LI>Double-check your spelling and syntax.
  513.     <LI>Try a different Search option (Standard, Exact Phrase, Any Words, All Words, and Boolean options are available).
  514.     <LI>Try your query again later. If you've just started Indexing Service, it may take a few minutes to catalog the IIS documentation.
  515.     </UL>
  516.     <%else%>
  517.  
  518. Page <%=CurrentPage%>
  519. <%if RS.PageCount <> -1 then
  520.      Response.Write " of " & RS.PageCount
  521.   end if %>
  522. <%end if%>
  523.  
  524. <%
  525.     ' If either of the previous or back buttons were displayed, save the query
  526.     ' and the recordset in session variables.
  527.     if SaveQuery then
  528.         set Session("Query") = Q
  529.         set Session("RecordSet") = RS
  530.     else
  531.         RS.close
  532.         Set RS = Nothing
  533.         Set Q = Nothing
  534.         set Session("Query") = Nothing
  535.         set Session("RecordSet") = Nothing
  536.     end if
  537.  %>
  538. <% end if %>
  539.  
  540.  
  541. </BODY>
  542. </HTML>
  543. <%else%>
  544. <%
  545.  
  546.  
  547.     'Strip noise words from search term
  548.     NCompare=""
  549.     NewCompare=""
  550.     SearchStringComp=SearchString+" "
  551.     for x = 1 to len(SearchStringComp)
  552.     if mid(SearchStringComp,x,1)=" " Then
  553.         ncompare2 = ","+ncompare+","
  554.         if instr(noise,ncompare2) = 0 then
  555.             NewCompare=NewCompare+" "+ncompare
  556.         End If
  557.         ncompare=""
  558.     else
  559.         ncompare=ncompare+mid(SearchString,x,1)
  560.     end if
  561.     next        
  562.     x = len(NewCompare)
  563.     if left(NewCompare,1) = " " Then
  564.        NewCompare = right(NewCompare,(x-1))
  565.     end if
  566.     SearchString=NewCompare
  567.  
  568.     'Strip punctuation from search term
  569.     SearchStringErr = ""
  570.     for x = 1 to len(SearchString)
  571.        testpunc= mid(SearchString,x,1)
  572.        if instr(punc2,testpunc) then
  573.         SearchStringErr= SearchStringErr
  574.        else
  575.         SearchStringErr = SearchStringErr + testpunc
  576.        end if
  577.     next
  578.     SearchString = SearchStringErr
  579.     CompSearch=SearchString
  580.  
  581. %>
  582.  
  583.  
  584. <%if SearchString = "" or instr(SearchString,"*") or instr(CompSearch,")") or instr(CompSearch,"(") or right(CompSearch,3)="OR " or right(CompSearch,4)="AND " then%>
  585. <b>Indexing Services was unable to process your query.<p></b><br>
  586.  
  587. Please rephrase the query and try again. Some common words (such as "get," "for," and "many") are not indexed. Also, do not use punctuation marks (commas, periods, and so on) in your query.
  588.  
  589. <%else%>
  590.  
  591. Indexing Service not started<p>
  592. *<%=CompSearch%>*
  593. <br>
  594.  
  595.  
  596. In order to perform search queries on the IIS documentation, you must first start Indexing Service.<br>
  597.  <p>
  598. To start Indexing Service,
  599. <ol>
  600. <li>On the computer running IIS, right-click the <b>My Computer</b> icon and click <b>Manage</b>.<p>
  601. <li>Expand the <b>Services and Applications</b> node in the MMC.<p>
  602. <li>Select <b>Indexing Service</b>.</p>
  603. <li>Click the <b>Action</b> menu and then click <b>Start</b>.<p>
  604. </ol> <p>
  605. Note: It may take Indexing Service a few minutes to catalog the IIS documentation.<p>
  606. In order to use Search while viewing the documentation remotely, Indexing Service must be running on the computer that is serving the documentation. If you are unable to start Indexing Service, please contact the Web site administrator.
  607. <%end if%>
  608. <% end if %>
  609.  
  610.